package com.wicket.okrbff.biz.service.dto.common;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.validation.constraints.NotNull;
import lombok.Data;
import java.util.Objects;

/**
 * @desc BffKeyFocusDto
 * @使用场景
 */
@Data
public class BffKeyFocusDto implements Serializable {

  /**
   * 重点关注内容ID
   */
  @ApiModelProperty("重点关注内容ID")
  private String keyFocusContentId;

  /**
   * 重点关注内容表类型编码 OMS_TARGET_OBJECTIVE:指标 OMS_TASK:工作任务 OMS_QUESTION:问题
   */
  @ApiModelProperty("重点关注内容表类型编码")
  private String keyFocusContentTypeCode;
/**
     * 重点关注ID 
     */
    @ApiModelProperty("重点关注ID")
    private String	 keyFocusId;

    /**
     * 重点关注内容名称 
     */
    @ApiModelProperty("重点关注内容名称")
    private String	 keyFocusContentName;

    /**
     * 关注主体ID 
     */
    @ApiModelProperty("关注主体ID")
    private String	 focusObjectId;

    /**
     * 关注主体表类型编码 OMS_FRAMEWORK_ORIGINAL_ROLE_MEMBER:身份人员 OMS_ORG_DEPT:部门 OMS_ORG_ORGANIZATION:组织
     */
    @ApiModelProperty("关注主体表类型编码")
    private String	 focusObjectTypeCode;

    /**
     * 主题内容表类型编码 
     */
    @ApiModelProperty("主题内容表类型编码")
    private String	 themeContentTypeCode;

    /**
     * 主题内容ID 
     */
    @ApiModelProperty("主题内容ID")
    private String	 themeContentId;

    /**
     * 虚拟组织成员就职记录ID 
     */
    @ApiModelProperty("虚拟组织成员就职记录ID")
    private String	 virtualOrgInductionRecordId;

    /**
     * 真实头像 
     */
    @ApiModelProperty("真实头像")
    private String	 userFace;

    /**
     * 真实姓名 
     */
    @ApiModelProperty("真实姓名")
    private String	 idCardName;

    /**
     * 用户昵称 
     */
    @ApiModelProperty("用户昵称")
    private String	 nickName;

    /**
     * 排序 
     */
    @ApiModelProperty("排序")
    private Long	 orderNumber;
@Override
  public boolean equals(Object o) {
      if (this == o) return true;
      if (o == null || getClass() != o.getClass()) return false;
      if (!super.equals(o)) return false;
      BffKeyFocusDto that = (BffKeyFocusDto) o;
      return  keyFocusContentId == that.keyFocusContentId&&keyFocusContentTypeCode == that.keyFocusContentTypeCode&&keyFocusId == that.keyFocusId&&keyFocusContentName == that.keyFocusContentName&&focusObjectId == that.focusObjectId&&focusObjectTypeCode == that.focusObjectTypeCode&&themeContentTypeCode == that.themeContentTypeCode&&themeContentId == that.themeContentId&&virtualOrgInductionRecordId == that.virtualOrgInductionRecordId&&userFace == that.userFace&&idCardName == that.idCardName&&nickName == that.nickName&&orderNumber == that.orderNumber;
    }
@Override
  public int hashCode() {
      return Objects.hash(super.hashCode(), keyFocusContentId,keyFocusContentTypeCode,keyFocusId,keyFocusContentName,focusObjectId,focusObjectTypeCode,themeContentTypeCode,themeContentId,virtualOrgInductionRecordId,userFace,idCardName,nickName,orderNumber);
    }

}
